package cn.stylefeng.guns.modular.deviceLedgerManagement.deviceLedger.service;

import cn.stylefeng.roses.kernel.db.api.pojo.page.PageResult;
import cn.stylefeng.guns.modular.deviceLedgerManagement.deviceLedger.entity.Equipment;
import cn.stylefeng.guns.modular.deviceLedgerManagement.deviceLedger.pojo.request.EquipmentRequest;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * 设备台账服务类
 *
 * @author PANL
 * @since 2023/12/04 09:18
 */
public interface EquipmentService extends IService<Equipment> {

    /**
     * 新增设备台账
     *
     * @param equipmentRequest 请求参数
     * @author PANL
     * @since 2023/12/04 09:18
     */
    void add(EquipmentRequest equipmentRequest);

    /**
     * 删除设备台账
     *
     * @param equipmentRequest 请求参数
     * @author PANL
     * @since 2023/12/04 09:18
     */
    void del(EquipmentRequest equipmentRequest);

    /**
     * 批量删除设备台账
     *
     * @param equipmentRequest 请求参数
     * @author PANL
     * @since 2023/12/04 09:18
     */
    void batchDelete(EquipmentRequest equipmentRequest);

    /**
     * 编辑设备台账
     *
     * @param equipmentRequest 请求参数
     * @author PANL
     * @since 2023/12/04 09:18
     */
    void edit(EquipmentRequest equipmentRequest);

    /**
     * 查询详情设备台账
     *
     * @param equipmentRequest 请求参数
     * @author PANL
     * @since 2023/12/04 09:18
     */
    Equipment detail(EquipmentRequest equipmentRequest);

    /**
     * 获取设备台账列表
     *
     * @param equipmentRequest         请求参数
     * @return List<Equipment>  返回结果
     * @author PANL
     * @since 2023/12/04 09:18
     */
    List<Equipment> findList(EquipmentRequest equipmentRequest);

    /**
     * 获取设备台账分页列表
     *
     * @param equipmentRequest                请求参数
     * @return PageResult<Equipment>   返回结果
     * @author PANL
     * @since 2023/12/04 09:18
     */
    PageResult<Equipment> findPage(EquipmentRequest equipmentRequest);

}
